package com.itcam.phaseiii.lambda_;

/**
 * Author:Cammy.Wu
 * Date:2024-04-29
 * Description:
 */

public class LambdaDemo02 {
    /**
     * Lambda表达式，只允许操作函数式编程接口：有且仅有一个抽象方法的接口
     */
    public static void main(String[] args) {
        useInterB(new InterB() {
            @Override
            public void show1() {
                System.out.println("匿名内部类，重写后的show1方法...");
            }

            @Override
            public void show2() {
                System.out.println("匿名内部类，重写后的show2方法...");
            }
        });

        System.out.println("____________________________________");

        // InterB不是有且仅有一个抽象方法的接口
//        useInterB(() -> {
//        });
    }


    public static void useInterB(InterB b) {
        b.show1();
        b.show2();
    }


}

interface InterB {
    void show1();

    void show2();
}
